package com.aspose.cells;

class zyc {
   static String a(DateTime var0) {
      return var0.toUniversalTime().a("yyyy-MM-dd\\THH:mm:ss\\Z", com.aspose.cells.b.a.c.za.b());
   }

   public static zati a(String var0, zxx var1) {
      zhm var2 = var1.h();
      Object var3 = var2.parseObject(var0);
      if (var3 != null) {
         return var2.a();
      } else {
         zhb var4 = var1.i();
         var3 = var4.parseObject(var0);
         if (var3 != null) {
            return CellsHelper.getDoubleFromDateTime((DateTime)var3, var1.c()) < 0.0D ? null : var4.a();
         } else {
            return null;
         }
      }
   }

   public static zxz a(Object var0, String var1, zxx var2) {
      return var2.a(var1, var0, false);
   }

   public static String a(String var0, zxx var1, boolean var2) {
      com.aspose.cells.a.a.za var3 = var1.f();
      boolean var4 = !var3.a();
      short var5 = var1.e();
      Object var6 = null;
      switch(var5) {
      case 12:
      case 1036:
      case 2060:
      case 4108:
         var6 = new zazd();
         break;
      case 25:
      case 35:
      case 1049:
      case 1059:
      case 1092:
         var6 = new zazf();
         break;
      default:
         if (zaku.a((short)16, var5)) {
            var6 = new zaze();
         } else if (zaku.a((short)7, var5)) {
            var6 = new zazb();
         } else if (!zaku.a((short)17, var5) && !zaku.a((short)2052, var5)) {
            if (!var4) {
               return var0;
            }
         } else {
            var6 = new zazc();
         }
      }

      if (!var4 && var6 == null) {
         return var0;
      } else {
         char var7;
         char var8;
         char var9;
         char var10;
         char var11;
         char var12;
         if (var2) {
            var7 = var3.d();
            var9 = var3.e();
            var11 = var3.g();
            var8 = '.';
            var10 = ',';
            var12 = '/';
         } else {
            var7 = '.';
            var9 = ',';
            var11 = '/';
            var8 = var3.d();
            var10 = var3.e();
            var12 = var3.g();
         }

         char[] var13 = var0.toCharArray();
         StringBuilder var14 = new StringBuilder(var13.length << 1);
         zxv var15 = new zxv();
         boolean var16 = false;
         boolean var17 = false;
         boolean var18 = false;
         int var19 = -1;
         int var20 = 0;

         while(true) {
            while(var20 < var13.length) {
               char var21 = var13[var20];
               int var22;
               if (var4) {
                  switch(var21) {
                  case '#':
                  case '0':
                     if (!var16 && !var17) {
                        var17 = true;
                        if (var20 > 0 && var13[var20 - 1] == var7) {
                           var19 = var14.length() - 1;
                           var14.setCharAt(var19, var8);
                        }
                     }

                     var14.append(var21);
                     ++var20;
                     continue;
                  case ';':
                     var14.append(var21);
                     if (var17) {
                        var17 = false;
                     } else if (var19 > -1) {
                        var14.setCharAt(var19, var7);
                     }

                     var16 = false;
                     var18 = false;
                     var19 = -1;
                     ++var20;
                     continue;
                  case 'A':
                  case 'a':
                     var22 = b(var13, var20, var13.length);
                     if (var22 > 0) {
                        var14.append(var13, var20, var22);
                        var20 += var22;
                        var18 = true;
                        var17 = false;
                        var16 = true;
                        continue;
                     }
                     break;
                  case 'D':
                  case 'H':
                  case 'M':
                  case 'S':
                  case 'Y':
                  case 'd':
                  case 'h':
                  case 'm':
                  case 's':
                  case 'y':
                     if (var6 != null) {
                        var15.a();
                        if (var2) {
                           var20 = ((zaho)var6).a(var13, var20, var13.length, var14, var15);
                        } else {
                           var20 = ((zaho)var6).b(var13, var20, var13.length, var14, var15);
                        }

                        if (var15.a != 48) {
                           var18 = true;
                           var17 = false;
                           var16 = true;
                        }
                     } else {
                        var18 = true;
                        var17 = false;
                        var16 = true;
                        var14.append(var21);
                        ++var20;
                     }
                     continue;
                  case 'G':
                  case 'g':
                     if (a(var13, var20, var13.length)) {
                        var14.append(var13, var20, 7);
                        var20 += 7;
                     } else if (var6 != null) {
                        var15.a();
                        if (var2) {
                           var20 = ((zaho)var6).a(var13, var20, var13.length, var14, var15);
                        } else {
                           var20 = ((zaho)var6).b(var13, var20, var13.length, var14, var15);
                        }

                        if (var15.a != 48) {
                           var18 = true;
                           var17 = false;
                           var16 = true;
                        }
                     } else {
                        var18 = true;
                        var17 = false;
                        var16 = true;
                        var14.append(var21);
                        ++var20;
                     }
                     continue;
                  default:
                     if (var18) {
                        if (var21 == var11) {
                           var14.append(var12);
                           ++var20;
                           continue;
                        }
                     } else if (var17) {
                        if (var21 == var7) {
                           if (var19 < 0) {
                              var19 = var14.length();
                              var14.append(var8);
                           } else {
                              var14.append(var21);
                              var16 = true;
                              var17 = false;
                           }

                           ++var20;
                           continue;
                        }

                        if (var21 == var9) {
                           var14.append(var10);
                           ++var20;
                           continue;
                        }
                     }
                  }

                  if (var6 == null) {
                     var20 = zj.c(var13, var20, var13.length, var14);
                     continue;
                  }
               } else {
                  switch(var21) {
                  case 'A':
                  case 'a':
                     var22 = b(var13, var20, var13.length);
                     if (var22 > 0) {
                        var14.append(var13, var20, var22);
                        var20 += var22;
                        continue;
                     }
                     break;
                  case 'G':
                  case 'g':
                     if (a(var13, var20, var13.length)) {
                        var14.append(var13, var20, 7);
                        var20 += 7;
                        continue;
                     }
                  }
               }

               var15.a();
               if (var2) {
                  var20 = ((zaho)var6).a(var13, var20, var13.length, var14, var15);
               } else {
                  var20 = ((zaho)var6).b(var13, var20, var13.length, var14, var15);
               }

               if (var4 && var15.b()) {
                  var18 = true;
                  var17 = false;
                  var16 = true;
               }
            }

            if (var16 && var19 > -1) {
               var14.setCharAt(var19, var7);
            }

            return com.aspose.cells.b.a.zr.a(var14);
         }
      }
   }

   static boolean a(char[] var0, int var1, int var2) {
      return var1 + 6 < var0.length && (var0[var1 + 1] | 32) == 101 && (var0[var1 + 2] | 32) == 110 && (var0[var1 + 3] | 32) == 101 && (var0[var1 + 4] | 32) == 114 && (var0[var1 + 5] | 32) == 97 && (var0[var1 + 6] | 32) == 108;
   }

   static int b(char[] var0, int var1, int var2) {
      if (var1 + 4 < var0.length) {
         if (var0[var1 + 2] == '/') {
            if ((var0[var1 + 1] | 32) == 109 && (var0[var1 + 3] | 32) == 112 && (var0[var1 + 4] | 32) == 109) {
               return 5;
            }
         } else if (var0[var1 + 1] == '/' && (var0[var1 + 2] | 32) == 112) {
            return 3;
         }
      } else if (var1 + 2 < var0.length && var0[var1 + 1] == '/' && (var0[var1 + 2] | 32) == 112) {
         return 3;
      }

      return -1;
   }

   public static void a(int var0, int var1, StringBuilder var2) {
      int var3 = var2.length();
      var2.append(var0);
      if (var0 < 0) {
         ++var3;
      }

      var1 -= var2.length() - var3;
      switch(var1) {
      case 0:
         break;
      case 1:
         var2.insert(var3, '0');
         break;
      case 2:
         var2.insert(var3, "00");
         break;
      case 3:
         var2.insert(var3, "000");
         break;
      case 4:
         var2.insert(var3, "0000");
         break;
      case 5:
         var2.insert(var3, "00000");
         break;
      case 6:
         var2.insert(var3, "000000");
         break;
      case 7:
         var2.insert(var3, "0000000");
         break;
      case 8:
         var2.insert(var3, "00000000");
         break;
      case 9:
         var2.insert(var3, "000000000");
         break;
      case 10:
         var2.insert(var3, "0000000000");
         break;
      default:
         if (var1 >= 0) {
            String var4 = var2.substring(var3, var2.length() - var3);
            var2.setLength(var3);

            while(var1 > 0) {
               var2.append('0');
               --var1;
            }

            var2.append(var4);
         }
      }

   }

   public static void a(DateTime var0, StringBuilder var1) {
      a(var0.getYear(), 4, var1);
      var1.append('-');
      a(var0.getMonth(), 2, var1);
      var1.append('-');
      a(var0.getDay(), 2, var1);
      var1.append('T');
      a(var0.getHour(), 2, var1);
      var1.append(':');
      a(var0.getMinute(), 2, var1);
      var1.append(':');
      a(var0.getSecond(), 2, var1);
      var1.append('Z');
   }

   public static void b(DateTime var0, StringBuilder var1) {
      a(var0.getYear(), 4, var1);
      a(var0.getMonth(), 2, var1);
      a(var0.getDay(), 2, var1);
      a(var0.getHour(), 2, var1);
      a(var0.getMinute(), 2, var1);
      a(var0.getSecond(), 2, var1);
      var1.append('Z');
   }

   public static boolean a(String var0) {
      int var1 = var0.indexOf(64);
      if (var1 < 0) {
         return false;
      } else if (var1 == 0) {
         return true;
      } else {
         char[] var2 = var0.toCharArray();
         var1 = 0;

         do {
            var1 = zj.b(var2, var1, var2.length);
            if (var1 >= var2.length) {
               return false;
            }
         } while(var2[var1] != '@');

         return true;
      }
   }
}
